Today's Question:  What does your personal desk look like?        GIVE A SHOUT

SEARCH KEYWORD -- CROSS ORIGIN



  The Ultimate GetElementsByClassName, Anno 2008

Two and a half years ago, I released the first version of getElementsByClassName. With how web browsers has evolved since, I thought I’d release a real ultimate version, dated 2008. Native Web Browser SupportSafari 3.1 has native getElmentsByClassName support, and upcoming Firefox 3 and Opera 9.5 will have it too. It only leaves out, you’ve guessed it, Internet Explorer.The Necessity Of This ScriptLiving in a world where Microsoft is halting every possible way t...

   JavaScript,geElementsByClassName,Cross browser compatible,Implementation     2011-11-26 02:46:20

  A return to good code

Stop doing this:public boolean foo() { if (true) {   return true;   }  else {   return false;   }}It always amazes me when I dig into an open source project, and I see code written by supposed experts, and reviewed by seasoned professionals, and nobody slaps the wrists of the developer who shoves return statements right in the middle of a method.Tell me, how hard is it to do this:public boolean foo() {   boolean flag = true;  ...

   Java,Code,Method,Return,Condition     2011-03-23 01:24:47

  Java’s toLowerCase() has got a surprise for you!

Have you ever encountered a surprise while using toLowerCase()? This is a widely used method when it comes to strings and case conversion. There is a nice little thing you should be aware of. toLowerCase() respects internationalization (i18n). It performs the case conversion with respect to your Locale. When you call toLowerCase(), internally toLowerCase(Locale.getDefault()) is getting called. It is locale sensitive and you should not write a logic around it interpreting loca...

   Java,toLowerCaser(),Locale specific,Stra     2011-09-29 11:21:07

  Why doesn't Microsoft involve in the patent war with Apple?

After Apple and Samsung patent war ends, Samsung immediately announced that they would continue to appeal. People are now guessing that the next target of Apple is Motorola and Google, while the situation getting worse, we could not help to ask why there is no emergence of Microsoft?At first glance, the answer seems to be very simple, both Microsoft Window 8 and Window Phone products do not have much intersection with Apple's products. But there is an unknown reason, there is a patent cross-lice...

   Microsoft,Apple,Patent     2012-08-27 22:10:19

  JS code to check different mobile devices

Today I come across a code snippet which uses JavaScript to check different mobile devices and then loads different CSS files accordingly. As we know that there are mobile devices with different screen sizes, it's always troublesome for web developers to develop cross browser and cross device compatible codes. Hope this one can help those who develop web apps on mobile devices. // Check whether it's a mobile device // wukong.name 20130716 if(/AppleWebKit.*Mobile/i.test(navigator.userAgent) || (...

   JavaScript,Mobile device,Detection     2013-11-28 05:25:10

  Great code is written twice (or more)

The last couple of years more and more people have been moving towards Agile development. These techniques aren’t new, most we’re devised in the 80s or 90s. But finally these days programmers and (more importantly) business consultants, architects and clients have learned to love and embrace Agile development.Evolving requirementsIt has now become common knowledge that you can’t write down all the requirements before you start the project. These requirements h...

   Twice,Good code,Recoding,Agile,Evolvement     2011-11-01 00:36:35

  SameSite attribute in cookie

Starting from Chrome 51, a new attribute SameSite has been introduced for browser cookie. This attribute is to prevent CSRF attack. Cookie is normally used to store data exchanged between client and server. It frequently stores user login information. If a malicious website can forge a HTTP request with the valid third party website cookie, it may be called a CSRF attack. For example, if a user logins to a bank website your-bank.com, the bank server responds a cookie: Set-Cookie:id=a3fWa; L...

   JAVASCRIPT,COOKIE,SAMESITE,CHROME,CSRF     2019-09-14 04:57:51

  Why isn't all internet traffic encrypted?

The biggest problem is that you must be able to verify that you're encrypting to the correct key. Without it, encryption would be practically useless, as anyone could perform a man-in-the-middle attack on the connection and remain undetected.In typical SSL/TLS, as well as other protocols using X.509, this verification is performed by "certification authorities", which are explicitly marked as "trusted" by web browsers and operating systems. Unfortunately, these CAs usual...

   Internet,Traffic,Encryption,Decryption,Security     2011-10-15 15:03:37

  It’s Not Too Late to Learn How to Code

Coding is sort of like a superpower; with it you can create things that millions of people see. You can change the way people behave, the way they think, and the way they interact with others. This is beyond awesome, but I’ve also met a lot of people that think that this ability is inaccessible to them. I’ve met a lot of “non-technical” people who seem to think that this superpower is only bestowed on those fortunate enough to have it come easily to them at a very early...

   Tips,Coding,Preparation,Interest     2011-10-17 11:26:38

  GUI vs CLI: Operation vs Expression

Consider this user interface for a car:The goal of these interfaces is to make you operate something, and operate it efficiently and safely. The grooves and clicks and limits constrain the range of motion and the number of choices. The visual look heavily hints at how to actively use it. They are usually not hard to learn. More importantly, the learning curve plateaus. Once you learn how to drive a car, there’s not much progression after that. Boundedness is ...

   GUI,CLI,Operation,Expression,Programmer,IDE     2011-10-25 10:31:26